Extracting media content from social networking services

ABSTRACT

Systems and methods are disclosed for extracting media content from social networking services and presenting the extracted content to an IPTV (Internet Protocol Television) user in a personalized and easy-to-consume manner. One or more feeds from social networking services that contain data pertaining to the user&#39;s social graph are monitored by a service in the IPTV domain for media content that meets preset criteria and preferences of the user. A social networking dashboard application is hosted in the IPTV environment and includes a user interface arranged with tools to enable the user to set preferences and specify tags that control various aspects of the media content extraction. The service can also monitor the social networking feeds in a real-time manner that enables creation of a knowledge base that is usable to present media content “trends” to the IPTV user.

BACKGROUND

Social networking websites have proliferated in popularity and can beexpected to present opportunities to improve the user experience withIPTV (Internet Protocol Television) systems. While such IPTV systemswork well in many situations, some systems presently tend to provideisolated, single user experiences that do not take full advantage of allthe resources that are available in an increasingly connected world. Itcan be difficult for some IPTV users to make sense and determine therelevancy of all of the available media content. Although there areexisting ways to add friends and share content and other assets in anIPTV environment, the experience can be disorganized and impersonal.Social networking applications and widgets have been developed forintegration into the IPTV environment, but such tools can require arelatively large amount of user interaction to enter data and makeupdates to the social networking sites. Such interaction can be awkwardand burdensome to IPTV users who are often looking to locate and consumepersonalized, relevant, and entertaining media content without having towork hard to do so.

SUMMARY

Systems and methods are disclosed for extracting media content fromsocial networking services and presenting the extracted content to anIPTV user in a personalized and easy-to-consume manner. One or morefeeds from social networking services that contain data pertaining tothe user's social graph (e.g., friends, relatives, co-workers, groups,etc., and collectively referred to as “friends”) are monitored by aservice in the IPTV domain for media content that meets preset criteriaand preferences of the user. A social networking dashboard applicationis hosted in the IPTV environment which can include a platform that isoptimized for media content playback, such as an IPTV or other largetelevision screen and/or on a home theater/audio system, as well asdevices referred to as “second displays.” The second displays serve asan additional control for the IPTV, but generally do not requireadditional investment by the user because the same make use of a device,e.g., a smartphone, laptop computer, tablet computer, desktop computer,an Internet appliance, etc., which most users would already have intheir possession.

Media content assets which typically include a link to media content(e.g., video, audio, images, etc.) and related metadata such as agraphical icon or thumbnail representation of the content, contenttitle, content size/length, date, user ratings, and the like areextracted from the monitored social network feeds and presented on agraphical user interface (UI) exposed by the social networking dashboardapplication running on either the IPTV, the second display, or bothdevices.

The UI is arranged with tools to enable the user to set preferences andspecify tags that control various aspects of the media contentextraction, for example, the frequency of the feed monitoring andcontent extraction, and to personalize the media content to the user.The UI may also be arranged to be user-configurable so that the mediacontent assets are presented according to the user's particularspecifications. For example, the size and shape of the UI window and howthe personalized media content is presented (e.g., in a mosaic ofthumbnails, a grid or list view, etc.) may be configured by the user.

The social networking dashboard application UI may be further configuredto enable the user to browse and select media content for playback onthe IPTV. The social networking dashboard application is typicallyconfigured with a networking communications module that enables two-wayconnectivity with one or more remote servers that are supported by theIPTV domain service provider. The remote server, responsively to theuser's media content selection made using the social networkingdashboard application, will fetch the selected media content andtransmit the content to the user to consume locally on the IPTV, storefor future consumption, or forward to another device.

In this way, media content is personalized to the user because it isextracted from sources identified by members of the user's social graphand conforms to the particular criteria specified by the user.Advantageously, the IPTV domain service (or, in alternativeimplementations, the social networking dashboard application or anotherlocally executing application), monitors the social networking feedsautomatically and in the background so that the IPTV user is presentedwith relevant and personalized media content choices any time theapplication is launched. In some instances the monitoring is performedcontinuously, while in others the monitoring is performed at intervalsthat may be determined by the service or specified by the IPTV user, forexample by being expressed as a user preference. The user can thensimply browse and select among the presented choices and consume themedia content without having to make significant effort beyond theinitial selection of the tags used as media content extraction criteria.

In another aspect of the present arrangement for media contentextraction from social networking services, the IPTV domain service canmonitor the social networking feeds in a real-time manner that enablescreation of a knowledge base that is usable to present media content“trends” to the user. In this aspect, media content assets are streamedfrom the service provider to the social networking dashboard applicationin real-time or near real-time as the user's friends update their socialnetworking pages with relevant media content. The relevancy of the mediacontent is determined according to preferences that may be set by theuser with tools exposed by the dashboard application UI. Suchpreferences can include, for example, context, subjects, ideas, topics,keywords, genres, and the like.

For example, a user preference may indicate interest in a particularcollege sports team. As the user watches a game on the user's IPTV, thesocial networking dashboard application will display trends that areindicative of the user's friend's social networking activities throughthe feeds that are related to the preference. As the game unfolds, onefeed might contain a picture and comments about a team member who justmade a key play in the game, a second feed might include a link to avideo about the team member, while a third feed could include a link toan audio file of fans cheering for the team.

Because the service provider can monitor multiple feeds on a frequentbasis, the trends can be continuously updated to reflect socialnetworking activities as they occur. For example, if a car advertisementis shown during a commercial break in the televised game, a trend couldshow that the user's friends have shifted from game-related activitiesto those that pertain to the advertisement. Thus, a feed may containphotographs showing a car owned by one of the user's friends which canbe extracted and shown or linked to in the displayed trend by thedashboard application. In this way the user can be conveniently kept upto date as to social networking trends of the user's friends.

The social networking dashboard application UI may be user-configurableto control how the trends are displayed and multiple preferences can beinput to the service through the UI in typical applications. Utilizationof multiple preferences can, in some instances, enable the trends to beeven more personalized to a given user by functioning as eitherbroadening or filtering criteria. For example, the user might specifythe generation of trends which pertain to both a preference for thecollege sports team and a preference for automobiles. In another case,the user may specify that the trends be generated to deal with either apreference for a college sports team or a preference for automobiles. Inthe first case, the specification of the automobile preference functionsto filter the displayed trends, while in the second case thespecification of the automobile preference works to broaden displayedtrends. Trends may further be broadened in scope by allowing a user toselect his or her social networking friends' preferences as apreference.

The social networking dashboard application may be further configured toaccept user feedback as to the accuracy and/or relevancy of theextracted media content and displayed trends. Such feedback may beuseful to enable the IPTV domain service provider to adjust the socialnetworking feed monitoring and content extraction processes to bettersuit the needs of a given user.

The present systems and methods may include a method for providing mediacontent to a media content playback device associated with a user. Themethod may include a step of monitoring one or more social networkingfeeds to identify media content items that conform with user-definedcriteria in which the user-defined criteria include tags. Another stepof the method may include extracting identification of media contentfrom the monitored social networking feeds when either a socialnetworking feed contains the tags. Another step of the method mayinclude sending the extracted identification as at least a portion of amedia content asset to a device for display to the user. Another step ofthe method may include causing the media content to be delivered to themedia content playback device for consumption or storage in response touser selection of a displayed media content asset.

In another aspect of the method profile preferences may be an element ofthe user-defined criteria and the identification of media content may beextracted from the monitored social networking feeds when objects in thesocial networking feed match the profile preferences. In another aspect,the profile preferences may be arranged hierarchically and at least oneof the profile preferences may be related to a second profile preferencevia context or keyword. The monitored social networking feeds may beassociated with various ones of the user's social graph in which thesocial graph includes one or more of friends, relatives, subscriptions,affiliations, groups, events, or co-workers, and the monitored feeds maybe selected according to a user subscription.

In other aspects of the method, the causing of the media content to bedelivered to the media content playback device may include causing themedia content playback device to download the media content from acontent server via a supplied URL/URI (Uniform Resource Location/UniformResource Identifier).). In another aspect, the causing may includeretrieving the media content from a content server or social networkingserver and transmitting the retrieved media content to the media contentplayback device. In another aspect of the method, the tags may becompliant with an API (Application Programming Interface) that isexposed by a server operated on behalf of the social networking serviceprovider. In another aspect, the media content asset may be expressedusing XML (eXtensible Markup Language). The present systems and methodsmay also be implemented using non-transitory computer-readable media.

The present systems and methods may also include a method that isperformed using one or more non-transitory computer-readable media thatcontain instructions which, when executed by one or more processorsdisposed in an electronic device, implement a social network dashboardapplication user interface. The method may support functionality throughthe user interface for receiving input from an application user that isindicative of tags usable as criteria for extracting media content fromone or more social networking feeds. The method may include a step ofproviding the inputted tags to a service that extracts media contentfrom the one or more social networking feeds when the criteria are met.The method may also include a step of receiving a plurality of mediacontent assets from the service, the media content assets includingidentification of the extracted media content and related metadata.Another step of the method may include displaying the plurality of mediacontent assets to the user. The media content assets may be arranged ina selectable manner to enable the user to select media content, from thedisplayed media content assets, for playback on a content playbackdevice.

In another aspect of the method provided by the non-transitorycomputer-readable media, the criteria may further include profilepreferences. The method may further provide functionality through theuser interface in which user input is received for controlling aspectsof the display of the plurality of media content items. In anotheraspect of the method, the controlling may comprise selecting amongalternative display arrangements for thumbnails that may berepresentative of the media content in which the arrangement includesmosaic, mesh, grid, categorization, and list. Another step of the methodmay include providing functionality through the user interface forreceiving an indication from the user of a selection of a piece of mediacontent and for displaying the metadata associated with the selectedpiece of media content or causing the selected piece of media content toplay back on a content playback device responsively to the indication.In another aspect, the dashboard application may be hosted on one of anIPTV, second display, disc player, media player, networked media player,set-top-box, game console, home entertainment system, or electronicdevice incorporating combinations of functionalities provided therein.

The present systems and methods may also include a method for displayingmedia content extracted from a social networking service on a contentplayback device associated with a user. The method may include a step ofmonitoring activities of one or more of members of the user's socialgraph on the social networking service in which the monitoring may beperformed substantially continuously so as to capture social networkingupdates posted by the members in near real-time. In other steps of themethod, media content contained in the social networking updates may beextracted and the extracted media content may be added to a queue ofmedia content associated with past updates. In other steps of themethod, the queued media content may be displayed to the user, and theuser may be enabled to select from ones of the displayed media contentfor playback on a content playback device.

In another step of the method, social networking updates that do notconform to the pre-selected user criteria can be rejected. In anotheraspect of the method, the pre-selected user preferences may berepresentative of at least one of context, keywords, topics, concepts,subject, or genre. In another aspect, the user-selected media contentmay be received by the content playback device by following a link tothe media content that is stored on a remote server.

Advantages of certain embodiments of the invention may include one ormore of the following. Ways are provided to extract media content fromfeeds from social networking services and present the extracted contentin the IPTV domain. The extracted media content can be personalized todifferent users of the IPTV system and be presented in the form oftrends. Extending the IPTV domain into popular social networkingservices can broaden the appeal of IPTV and significantly enhance theIPTV user experience.

Other advantages will be apparent from the description that follows,including the figures and claims.

BRIEF DESCRIPTION OF THE DRAWINGS

Like reference numerals denote like elements throughout.

FIG. 1 is a block diagram of an exemplary system in accordance with oneaspect of the present principles.

FIG. 2 is a block diagram of another exemplary system in accordance withan aspect of the present principles.

FIG. 3 is a block diagram illustrating user interface functionalitysupported by a social networking dashboard application according to anaspect of the present principles.

FIGS. 4, 5, and 6 show illustrative windows displaying thumbnails ofmedia content extracted from social networking feeds according to anaspect of the present principles.

FIG. 7 illustrates one exemplary method of displaying media contenttrends according to an aspect of the present principles.

FIG. 8 illustrates one exemplary method of selecting media content forconsumption according to an aspect of the present principles.

FIG. 9 shows an illustrative window displaying media content trends inaccordance with another aspect of the present principles.

FIG. 10 is a flowchart illustrating an exemplary method according to anaspect of the present principles.

FIG. 11 illustrates an exemplary computing device, e.g., that of thedisclosed second display, proxy server, management server, contentserver, web server, computing device, or social network server.

DETAILED DESCRIPTION

Referring initially to FIG. 1, a system 10 is shown including a contentplayback device 12 coupled to a local network 16, which may be wired,wireless, or a combination of both. Also coupled to the local network 16are one or more second displays 14 a-14 c, an exemplary one of which istermed herein second display 14 i, which runs a second displayapplication 23. Second displays and their utilization in an IPTVenvironment are described in detail in co-pending U.S. patentapplication Ser. No. 13/077,181, filed Mar. 31, 2011, entitled“PERSONALIZED SECOND DISPLAY BROWSING EXPERIENCE DUE TO MULTIPLE SESSIONFEATURE”, owned by the assignee of the present application andincorporated by reference in its entirety. To control content playbackdevice settings, a group of users may exploit individual “seconddisplays” to control settings, view, browse, and navigate content ordata service offerings, by service providers, e.g., Internet networkservices, on behalf of a content playback device, e.g., an IPTV, andthen arrange for a selected content item or items to be played back onthe content playback device.

The second displays are optionally utilized and typically serve as anadditional control for the IPTV and are generally complementary to anIPTV because of the second display's strength in supported languages andcharacter font sets, data entry, processing power, and user experiencein content management.

Communications with service providers 24 may take place through a proxyserver 22, and the proxy server will typically present theauthentication credentials of the content playback device to serviceproviders, so that the second displays appear to the service providersas an authenticated content playback device.

The second display may be further caused to perform one or more of thefollowing additional steps: receiving a list of available content itemsfrom the proxy server and displaying the list according to theselection; receiving a selection of one or more of the available contentitems; and transmitting one or more reference identifiers identifyingthe one or more respective content items to the proxy server, such thatthe one or more reference identifiers are configured to be employed at aproxy server with an authentication credential of the content playbackdevice to request from one or more respective service providers that theone or more content items be made accessible for playback on the contentplayback device.

The second displays may include any device that can run an applicationthat communicates with a content playback device, including, but notlimited to, personal computers, laptop computers, notebook computers,netbook computers, handheld computers, personal digital assistants,mobile phones, smart phones, tablet computers, hand-held gaming devices,gaming consoles, set-top-boxes (an information appliance that typicallyconnects a television or other display device to a content provider suchas a cable or satellite TV service provider), disc player, media player(which may be networked such as the Sony Netbox), home entertainment orhome theater system, and also on devices specifically designed for thesepurposes, in which case the special device would include at least aprocessor and sufficient resources and networking capability to run theweb application.

The content playback device can take many forms, and multiple contentplayback devices can be coupled to and selected within a given localnetwork. Exemplary content playback devices may include IPTVs, DTVs,digital audio systems, or more traditional video and audio systems thathave been appropriately configured for connectivity. In video systems,the content playback device includes a processor controlling a videodisplay to render content thereon.

A number of servers may be accessed by the content playback device 12and the second display 14 i through the local network 16 and theInternet 25, including the management server 18, the proxy server 22,and one or more content servers 24 corresponding to service providersthat can serve media content 29.

The management server 18, along with the content playback device 12,communicates with the content server 24 such that the server providesmedia content items for presentation of or access to the media contentat the content playback device 12. The proxy server 22 communicates withthe management server 18 and the second display 14 i. In some cases, theproxy server 22 may be merged with the management server 18, or in othercases a separate proxy server may be provided for each content server orservice provider. The content playback device 12 sends login informationto the management server 18 which returns to the content playback device12 a user token that must subsequently be presented by the contentplayback device 12 to the content server 24 to obtain content from thecontent server 24.

The proxy server 22 includes a second display communications modulewhich performs communications with the second display 14 i, e.g., toprovide lists of content playback devices, service providers, contentitems, and the like. In turn, the proxy server 22 receives from thesecond display 14 i selections of service providers, content playbackdevices, and content items associated with service providers. The proxyserver 22 further includes a storage module which stores, among otherthings, authentication credentials of content playback devicesassociated with the user account. The proxy server 22 also includes acontent server communications module which communicates with contentservers 24 and/or with management servers 18 to arrange for selectedcontent playback devices 12 to receive selected content items, or accessto the same, as chosen by a user using the second display 14 i. Theproxy server 22 responds to a correct user name and password from thesecond display 14 i in an authentication request state. The proxy server22 verifies the user name and password with the management server 18,creates and transmits a session token to the second display, obtainsinformation about content playback devices affiliated with the useraccount, and then completes the authentication. The proxy server 22 mayreturn to each second display the information about all content playbackdevices 12 that are affiliated with the user account associated with theuser name and password, including their local IP addresses which werestored by the management server 18 after login (and subsequentlyprovided to the proxy server 22). In more detail, the proxy server 22sends a token to the second display 14 i, the token associated with acontent playback device, and this token gets communicated in futuretransactions between the second display and the proxy server, so thatthe proxy server 22 knows what content playback device the content itemis intended for. Each user with each second display may then choose acontent playback device and browse the services and content optionsavailable through the services.

FIG. 2 shows an additional aspect of the present arrangement in whichone or more servers 212 associated with a social networking service 215are further operatively coupled to the management and proxy servers 18and 22 in the IPTV domain 200. Also optionally disposed in the IPTVdomain 200 is an exemplary web server 201 for serving web pagesassociated with the IPTV domain 200 when needed to supplement or replacefunctionality that may be provided by a dedicated social networkingdashboard application (as described below). In other words, in someimplementations, it may be desirable to support the present socialnetwork functionality through utilization of an application such as aweb application that is typically configured using a web browser that islocally instantiated on either the content playback device 12 or seconddisplay 14 i.

The servers 18 and/or 22 are arranged to monitor one or more socialnetworking feeds (representatively indicated by a social networking feed218) to the proxy server 22 that are exposed by a server 212 supportedby a social networking service 215. The monitoring and extraction ofcertain media content is performed according to user-specified criteriaas described in more detail in the description accompanying FIG. 3below. In alternative implementations, the monitoring and extraction maybe performed, in whole or part, using an application that executeslocally on the content playback device 12 and/or a second display 14 i.

The remote monitoring using the servers 18 and 22 may be utilized, forexample, in those scenarios in which substantially continuous monitoringof the feeds, or relatively frequent monitoring of the feeds isimplemented. The servers may be advantageously utilized in suchscenarios as they are typically configured to operate continuously ascompared to a local monitoring/extraction application executing on thecontent playback device or second display that can be turned off whennot in use thus making continuous monitoring impossible in most cases.

The social networking feeds contain data that is representative ofcertain social networking activities of various friends 225 of an IPTVuser. It is noted that while the term “friend” is used for the sake ofconvenience and clarity of exposition in the present description, theterm is intended to have broad scope and encompass various persons,things, or entities that may be part of the user's social graphincluding subscriptions, affiliations, groups, events, and the like. Inthe exemplary arrangement shown in FIG. 2, the server 212 can typicallyexpose an API 202 to enable the proxy server 22 (or the managementserver 18) and social networking server 212 to efficiently communicatewith each other using conventional protocols. The feed 218 may bereceived in response to various data mining requests 222 generated by anextractor 224 that is disposed in the proxy server 22 that are presentedto the API. Such receipt of data in response to a request is referred tohere as a “data pull” scenario.

In an alternative arrangement, the monitoring may be implemented using asocial networking feed that is pushed from an API or other interface atthe social networking server 212 to a feed recipient. In this scenario,referred to as “data push”, the pushed feed may be received by theservers 18 and/or 22, or the local IPTV server or second display inalternative scenarios. In one illustrative scenario, the pushed feed maybe provided via a subscription service that is established between theIPTV servers and the social networking servers and the parametersgoverning the transfer of data could be governed, for example, by theterms of a service agreement or license. Some parameters may also be setby the user in some cases.

Returning to the pull case, the data mining requests typically canincorporate the use of specific tags that are consistent with protocolsexposed by the API 202. In this way, the IPTV domain 200 canadvantageously tap into content from the increasingly popular socialmedia networks that can be implemented across a wide array of platformsand which can facilitate various communication and content-sharingservices between the friends 225 and the IPTV user. For example, asdescribed in more detail below, a user of the systems according to thepresent principles may conveniently browse and select from among mediacontent that is posted by the user's friends. In alternativeimplementations where an API is not exposed by a social networkingservice, the extractor 224 may be configured to extract or read datafrom the service from human readable output in a process commonly knownas data scraping.

The social networking feed 218 will typically include a link to mediacontent (e.g., video, audio, images, etc.) as well as related metadatasuch as a graphical icon or thumbnail representation of the content,title, size/length, date, ratings, and the like. The proxy server 22 canfollow the link and make a request to the content server 24 to therebyreceive extracted media content 228. Alternatively, the proxy serverwill simply provide the URL or URI for the media content to the contentplayback device 12 or second display 14 i so that those devices canaccess the extracted media content directly from the content server. Insome cases, the social networking feed 218 may include extracted mediacontent directly from the social networking server 212 as indicated byreference numeral 230 so that the proxy server does not need to accessthe extracted media content from a separate content server.

FIG. 3 shows a social networking dashboard application 302 ₁ that isinstantiated on the content playback device 12. An application 302 ₂having similar features and capabilities as application 302 ₁ may alsobe optionally instantiated on the second display 14 i in implementationswhere a second display is utilized. Each of the social networkingdashboard applications 302 can be configured as a standalone applicationor a web-based application. Alternatively, the functionality provided inthe social networking dashboard application may be incorporated, in somecases, into other applications that may be running in the IPTVenvironment. In addition, the social networking dashboard application302 can be implemented using a cloud computing paradigm in which someapplication functionality is provided locally while other functionalityis provided by operations conducted on a remote server.

In an alternative implementation, the social networking dashboardapplication may execute substantially remotely, for example on a serverthat may be operated in the IPTV domain 200 (FIG. 2). In suchimplementations, a user interface, and other functionality in somecases, will typically be provided on a client application that runslocally on the content playback device 12 and/or a second display 14 i.

Each of these social networking dashboard applications 302 can beutilized to expose a UI 308 to an IPTV user 310. The UI 308 is arrangedwith various tools to enable the user 310 to populate a user profile315. Each of the social networking dashboard applications 302 can beconfigured as a standalone application or the functionality providedtherein may be incorporated, in some cases, into other applications thatmay be running in the IPTV environment. The user can typically interactwith the UI 308 using an input device such as a keyboard, pointingdevice, remote control, or the second display 14 i (FIG. 1).

The user profile 315 includes tags 322 and feed preferences 326 that areutilized by the extractor 224 (FIG. 2) when mining a monitored socialnetworking feed to extract relevant media content. The user 310 canspecify the tags 322 such as keywords, names of social network friends,media content types, content length (for audio and video for example),and the like that, when present in a particular feed, will trigger theextractor 224 to identify and extract the media content in that feed.The user profile 315 can also contain information pertaining to the usersuch as rating, language, character set, and the like. This userinformation may also function as the sole or supplemental criteria thatmay be utilized by the extractor 224 when identifying and extractingmedia content from the monitored social networking feed. The feedpreferences 326 in the user profile 315 can be set by the user 310 toestablish the frequency at which media content is extracted. For examplethe user 310 may specify how often a feed is checked for updates thatmay include new media content.

When the extractor 224 is triggered to begin the extraction process, itwill generate a media content asset. In one implementation, the mediacontent asset is expressed in an XML format, however other knownmetafile formats such as m3u, m3u8, JSON (JavaScript Object Notation),and the like, may also be utilized. The media content asset willtypically include a link (e.g. a URL) to the extracted content andmetadata that is associated with the media content. The metadata caninclude various types of data including a thumbnail image or icon of themedia content, content title, content size/length, date, user ratings,and the like. Typically, multiple instances of media content assets willbe generated by the extractor 224 and then provided to the socialnetworking dashboard application 302 via a network connection.

The social networking dashboard application 302 will receive the mediacontent assets in the XML format and responsively create a media contentasset list that is displayed on the UI 308 as indicated by referencenumeral 340. The displayed media content asset list can beuser-configurable using a display configuration functionality 345 sothat the particular graphical layout of the media content assets may betailored to the user's preferences.

For example, as shown in FIG. 4, a mesh layout may be selected by theuser in which thumbnails for each piece of media content arecollectively displayed in a mosaic pattern in a display window 400supported by the social networking dashboard application UI 308 (FIG.3). In this example, 12 pieces of media content are displayed in thewindow 400 using thumbnails 405 (where graphical details of thethumbnails are omitted for the sake of clarity and each thumbnail isnumbered). However, various alternative layouts can also be provided tothe user for selection.

For example, FIG. 5 shows a window 500 in which the thumbnails 405 arearranged in a grid-based layout. Here, the media content assets arearranged by networking service provider and/or friend. In this example,the feed associated with service A, or friend A, has four pieces ofmedia content (items 2, 10, 11, and 7) that were extracted according tothe tags 322 (FIG. 3) specified by the user. The feed associated withservice B, or friend B, has five pieces of media content (items 4, 9,12, 1, and 8) that were extracted according to the tags 322 specified bythe user. The feed associated with service C, or friend C, has threepieces of media content (items 6, 5, and 3) that were extractedaccording to the tags 322 specified by the user. It will be recognizedthat other layouts may also be utilized including lists, categorizedmedia content (by type, length, ratings, etc.), and meshes. The numberand type of alternative layouts that are available for selection by theuser can vary by implementation. In addition, the identity of particularfriends or services that are the sources of the media content assets canbe hidden from the user in some cases.

In one illustrative example, the media content can be presented to theuser in a prioritized manner, for example, by indicating the priority ofthe service or friend from high to low. Such priority indication may beimplicitly provided, for example, by the position of the service/friendor associated media content in the window, or explicitly provided viatext or a graphic object in the window. The XML file will typicallyinclude the relevant code which the social networking dashboardapplication UI can use to format the arrangement of the extracted mediacontent assets by service/friend with the appropriate priority.

The IPTV domain service can determine priority by analyzing variouscommunications between the IPTV user and the user's friends (notingagain that friends can include subscriptions, affiliations, groups,events, and the like). For example, if two of the user's friends A and Bwatch the same piece of media content (and that media content meets thevarious criteria to be extracted), then friend A will be given priorityover friend B if friend A has more communications with the user thanfriend B. Such communications could include messages, photographs taggedby the user on the friends' social networking page (and vice versa), andthe like. As shown in FIG. 5, the priority of friend A may be implicitlyindicated by placing the media content thumbnails associated with friendA at the top of the window 500 and over those thumbnails associated withfriend B.

Referring again to FIG. 3, the UI 308 also exposes functionalities bywhich the user can specify user profile preferences. In this particularexample, three profile preferences A, B, and C are utilized asrespectively indicated by reference numerals 360, 362, and 366. Suchpreferences can include, for example, context, subjects, ideas, topics,keywords, genres, and the like. It is emphasized that while threeprofile preferences are utilized in this particular example, fewer thanthree profile preferences can be used in some implementations. Likewise,more than three profile preferences can be used in order to meet theneeds of a particular implementation.

In one embodiment, the user profile preferences are configured in ahierarchical arrangement so that profile preference A is the primarypreference, preference B is a secondary preference, and preference C isa tertiary preference. In this arrangement, the primary preference canvariously include context, keywords, topics, concepts, subject, genre,etc. One example of a primary preference keyword is “3D” which is acommon abbreviation for three-dimensional. The secondary preference canvariously include context and keywords, etc. that are related to theprimary preference. An example of a secondary preference would be “3Dwith 4^(th) D” since the concept of a fourth dimension (which may relateto sensory effects such as motion) is related to the 3D keyword. Thetertiary preference, in this example, includes the primary preferencesbelonging to the user's social networking friends.

Using the profile preferences 360, 362, and 366, the extractor 224 (FIG.2) can monitor the social networking feeds and extract media content forpresentation as one or more media content trends to the user through theuser interface 308 (FIG. 3 and element 340). Typically, the monitoringand extraction is performed regularly so that the trends can be createdusing media content that is extracted substantially in real-time withthe posting of the content to the social networking site.

Elaborating on the example provided in the Summary section above, FIG. 6shows a window 600 supported by the social dashboard application UI 308(FIG. 3). In this example, 12 pieces of media content are displayed inthe window 600, using thumbnails 605, and categorized by profilepreference. The profile preferences include the keywords as shown. FIG.7 provides an illustrative example by which media content associatedwith the user's favorite football team is continuously updated with newcontent to indicate a trend to the user. At some arbitrary time t₀, thefour pieces of media content are displayed as thumbnails 1A, 2A, 3A, and4A. At a later time t₁, the thumbnails scroll from right to left as anew piece of media content represented by thumbnail 5A is displayed, asindicated by reference numeral 705. Thumbnail 5A represents mediacontent pertaining to profile preference A that was recently posted bythe user's friend to a social networking website and which is monitoredas a feed. At another later time t₂, when another piece of media contentthat is relevant to the profile preference is extracted, the displayedthumbnails scroll again as thumbnail 6A is added to the right side ofthe display, as indicated by reference numeral 710.

Since the display window is typically updated in real-time or nearreal-time, the user can easily keep abreast of the trends associatedwith each of the user's profile preferences by watching the right sideof the display for new media content. In some implementations, thesocial networking dashboard application can provide a visual or audioalert to indicate incoming new media content. In this example as notedabove, media content item 4A represents a picture and comments posted bythe user's friend to a monitored social networking site about a teammember who just made a key play in a game. Media content item 5Arepresents a video about the team member posted by another friend, andmedia content item 6A is an audio file of fans cheering for the teamposted by a third friend.

The user can browse the displayed thumbnails in a window and interactwith the related media content by selecting a particular thumbnail usingan input device. As shown in FIG. 8, when the user selects the mediacontent thumbnail 2C, as indicated by reference numeral 805, anotherwindow 810 is opened. The window 810 exposes metadata 815 associatedwith the media content such as total views and the number of likes anddislikes, as well as a control 820 to launch to the media content itselfso that the user can consume it on the IPTV. Window 810 may also includecontrols (not shown) for saving the media content for future localconsumption or to forward the media content to another device or user.

FIG. 8 also shows an additional expression of trend information aboutthis particular piece of media content. As shown, the trend informationis displayed as a line graph 832 which plots popularity, in this case aranking of the media content by the user's friends, over some arbitrarytime interval. Other trend representations (not shown) can also bealternatively utilized including bar graphs, pie charts, and the like.The popularity of a given piece of media content may be determined in avariety of ways. For example, the IPTV service may track ratings orrankings of the media content by the user's friends, as expressed in thesocial networking feeds. The level of activity by the user's friendspertaining to media content may also be used to determine popularity.For example, a piece of media content may be identified by the serviceas being popular because a number of the user's friends are makingcomments about it.

In one illustrative example, trend information can be generated whichexpresses a degree of popularity of a particular aspect of mediacontent. For example, the aspect may be keywords contained in socialnetworking feeds that commonly pertain to multiple pieces of mediacontent. Thus, if several of the user's friends each commented ondifferent videos about penguins, the keyword “penguins” could beincluded as part of a popularity trend even if no single video wouldotherwise be determined as being popular.

FIG. 9 shows an illustrative window 905 that includes an alternativemethod for displaying trends. In this example, the user's three profilepreferences 910 include keywords relating to mobile technology, asshown. Feeds associated with three social networking services 915including a micro-blog service, a video service, and a social networkservice, are monitored for updates. The most recent updates aredisplayed at any given time and as new media content is posted to arespective service, additional updates are displayed in real-time inmany cases, or near real-time in others.

FIG. 10 is a flowchart illustrating an exemplary method 1000 by whichsoftware instantiated and executed in various ones of a socialnetworking domain 1005, IPTV domain 1010, and IPTV user's domain 1015 isemployed to enable the user to browse and select media content, and viewmedia content trends that are generated from feeds exposed by the socialnetworking server 212 (FIG. 2). In the social networking domain 1005, afirst step is providing monitored social networking services to theuser's friends (step 1014). In some implementations, the user caninteract with functionality exposed to the social networking dashboardapplication (or by a service supported in the IPTV domain) in order forthe user to set up subscriptions for the feeds that are established andmonitored for particular friends.

The monitored social networking feeds are then exposed to the servers inthe IPTV domain 1010 typically through an API (step 1016). A next stepis for the servers in the IPTV domain to extract media content andgenerate media content assets and trends according to tags in the feedand the user's preference profiles (step 1018). The extracted mediacontent can be presented in the form of thumbnails with associatedmetadata in some cases, along with trends using the UI exposed by thesocial networking application dashboard (step 1020). As noted above, thepresentation of the media content assets lists may be user-configurablein some implementations.

In the user's domain 1015, the user can browse the media content assetlists (step 1024). The user can select from the thumbnails to learnadditional information through the exposed metadata and/or consume themedia content via playback on the content playback device (step 1026).Control is then passed back to the IPTV domain so that the selectedmedia content can be served from an IPTV domain server or a URL/URI maybe provided so that the content playback device or second display canaccess the media content directly from the content server (step 1022).The selected media content can then be consumed on the content playbackdevice, saved for future consumption, or forwarded to another device(step 1028).

Aspects of various components are described below.

One implementation includes one or more programmable processors andcorresponding computing system components to store and execute computerinstructions, such as to execute the code that provides the seconddisplay or various server functionality, as well as for browsing.Referring to FIG. 11, a representation of such an exemplary computingdevice 1100 for a second display 14 i, proxy server 22, managementserver 18, content server 24, web server 201, or social network server212, is illustrated.

The computing device includes a controller 156, a memory 174, storage172, a media device 158, a user interface 164, an input/output (I/O)interface 166, and a network interface 168. The components areinterconnected by a common bus 170. Alternatively, different connectionconfigurations can be used, such as a star pattern with the controllerat the center.

The controller 156 includes a programmable processor and controls theoperation of the computing device and its components. The controller 156loads instructions from the memory 174 or an embedded controller memory(not shown) and executes these instructions to control the system. Inits execution, the controller 156 may provide, for example, the seconddisplay 14 i control of a content playback device system 12 as, in part,a software system. Alternatively, this service can be implemented asseparate modular components in the controller 156 or the second display14 i.

Memory 174, which may include non-transitory computer-readable memory175, stores data temporarily for use by the other components of thecomputing device 1100. In one implementation, memory 174 is implementedas RAM (Random Access Memory). In other implementations, memory 174 alsoincludes long-term or permanent memory, such as flash memory and/or ROM(Read-only Memory).

Storage 172, which may include non-transitory computer-readable memory173, stores data temporarily or long-term for use by other components ofthe computing device 1100 such as for storing data used by the system.In one implementation, storage 172 is a hard disc drive or a solid statedrive.

The media device 158, which may include non-transitory computer-readablememory 161, receives removable media and reads and/or writes data to theinserted media. In one implementation, the media device 158 is anoptical disc drive or disc burner, e.g., a writable Blu-ray® disc drive162.

The user interface 164 includes components for accepting user input,e.g., the user content selections, from the user of the computing device1100 and presenting information to the user. In one implementation, theuser interface 164 includes a keyboard, a mouse, audio speakers, and adisplay. The controller 156 uses input from the user to adjust theoperation of the computing device 1100.

The I/O interface 166 includes one or more I/O ports to connect tocorresponding I/O devices, such as external storage or supplementaldevices, e.g., a printer or a PDA. In one implementation, the ports ofthe I/O interface 166 include ports such as: USB (Universal Serial Bus)ports, PCMCIA (Personal Computer Memory Card International Association)ports, serial ports, and/or parallel ports. In another implementation,the I/O (Input/Output) interface 166 includes a wireless interface forwireless communication with external devices. These I/O interfaces maybe employed to connect to one or more content playback devices.

The network interface 168 allows connections with the local network andoptionally with content playback device 12 and includes a wired and/orwireless network connection, such as an RJ-45 or Ethernet connection or“WiFi” interface (802.11). Numerous other types of network connectionswill be understood to be possible, including WiMax, 3G or 4G, 802.15protocols, 802.16 protocols, satellite, Bluetooth®, or the like.

The computing device 1100 may include additional hardware and softwaretypical of such devices, e.g., power and operating systems, though thesecomponents are not specifically shown in the figure for simplicity. Inother implementations, different configurations of the devices can beused, e.g., different bus or storage configurations or a multi-processorconfiguration.

Various illustrative implementations of the present invention have beendescribed. However, one of ordinary skill in the art will recognize thatadditional implementations are also possible and within the scope of thepresent invention.

Accordingly, the present invention is not limited to only thoseimplementations described above.

The invention claimed is:
 1. A method for providing media content to amedia content playback device associated with a user, comprising: i.monitoring one or more social networking feeds to identify media contentitems within the social networking feeds that conform with user-definedcriteria, the user-defined criteria including tags; ii. extractingidentification of an identified media content item from the monitoredsocial networking feeds when a social networking feed contains the tags;iii. sending the extracted identification as at least a portion of amedia content asset including a link and metadata associated with theidentified media content item to a second display to display to theuser, wherein the second display is separate from the media contentplayback device; and iv. responsive to a user selection of the displayedmedia content asset by the second display, causing media contentassociated with the selected media content asset to be delivered from aservice provider to the media content playback device for consumption orstorage, the causing including, responsive to the user selection, thesecond display communicating identification of the selected mediacontent asset to a proxy server, wherein the proxy server storesauthentication credentials of content playback devices associated withthe user's account, and wherein responsive to receiving theidentification of the selected media content asset from the seconddevice, the proxy server presents the authentication credential of thecontent playback device to the service provider, wherein the seconddisplay appears to the service provider as the media content playbackdevice.
 2. The method of claim 1, wherein the user-defined criteriafurther include profile preferences and the identification of theidentified media content items is extracted from the monitored socialnetworking feeds when object tags in the monitored social networkingfeeds match the profile preferences.
 3. The method of claim 2, whereinthe profile preferences are arranged hierarchically and at least one ofthe profile preferences is related to a second profile preference viacontext or keyword.
 4. The method of claim 1, wherein the monitoredsocial networking feeds are associated with various ones of the user'ssocial graph, the social graph including one or more of friends,relatives, subscriptions, affiliations, groups, events, or co-workers.5. The method of claim 1, wherein the monitored social networking feedsare selected according to a user subscription.
 6. The method of claim 1,wherein the causing includes causing the media content playback deviceto download the media content from a content server via a suppliedURL/URI.
 7. The method of claim 1, wherein the causing includesretrieving the media content from a content server or social networkingserver and transmitting the retrieved media content to the media contentplayback device.
 8. The method of claim 1, wherein the tags arecompliant with an API exposed by a server operated on behalf of a socialnetworking service provider.
 9. The method of claim 1, wherein the mediacontent asset is expressed using XML.
 10. A non-transitorycomputer-readable medium, comprising instructions for causing acomputing device to implement the method of claim 1.